package org.zhang.boot.util;

import org.zhang.boot.JavaAgent;

import java.io.File;
import java.net.URISyntaxException;

public class FileUtil {

    public static File getJarFile() {
        try {
            // 获取当前类的 ProtectionDomain 对象
            // 从 ProtectionDomain 对象中获取 CodeSource 对象
            // 从 CodeSource 对象中获取 Location
            // 最后，通过 File 对象获取 JAR 文件的路径
            return new File(JavaAgent.class.getProtectionDomain().getCodeSource().getLocation().toURI());
        } catch (URISyntaxException e) {
            e.printStackTrace();
            return null;
        }
    }
}
